from machine import Pin, SPI
from ssd1306 import SSD1306_SPI   # 导入SSD控制的OLED程序
import framebuf
import os
import utime
import time
import math

# OLDE连线示意，ESP32开发板
# SCK ---> D5 ---> 14
# MOSI --> D6 ---> 12
# MIOS --> Null-->任意没有用的
# DC   --> D8 ---> 15
# RES  --> D7 ---> 13
# CS   --> Null-->本次使用6针没有该引脚,指定一个空引脚即可
# 根据上面的连线，定义各个IO接口变量
SCK = Pin(14, Pin.OUT)
MOSI = Pin(13, Pin.OUT)
MISO = Pin(0)
DC = Pin(2)
RES = Pin(4)
CS = Pin(15)
weather_fonts = bytearray(b'\x80\x80@ \x10\x08$\xc3\x04\x08\x10 @\x80\x80\x00\x00\x00\x00\xfe\x82\x82\x82\x82\x82\x82\x82\xfe\x00\x00\x00\x00@@BBBBB\xfeBBBBB@@\x00 \x10LGTTTTTTT\xd4\x04\x04\x00\x00\x00\x00\x00\x02\x02\x02\x02\x82B"\x1a\x06\x00\x00\x00\x00\x00\x00\x00\xff@@@@@@@\xff\x00\x00\x00\x00\x80\x80@ \x10\x0c\x03\x00\x03\x0c\x10 @\x80\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0f0@\xf0\x00')
test_fonts = bytearray(b'\x00\x10\x08\x08\x18\x14\x16\x1B\x92\x54\x34\x38\x08\x08\x00\x00\x00\x00\x00\xFE\x4A\x4A\x4A\x4A\x4A\x4A\x4A\x4A\x7E\x00\x00\x00\x00\x80\x88\x8A\x4A\x2A\x2A\x1E\x0A\x12\x2A\x4A\x4A\x88\x00\x00\x00\x08\x04\x04\x0E\x0E\x0E\x0E\x0E\x0E\x0E\x7C\x82\x82\xC0\x00')
kaoyan_fonts1 = bytearray(b"\x00\x00\x00\x00\x00\x00\x80\x80\x80\x80\x80\x80\x80\x80\xfc\x88\x80\x80\xc0\xc0\x80\x80\xc0p0 \x00\x00\x00\x00\x00\x00\x00\x00    \xe0\xe0   00 \x10\x10\x10\xf0\xf0\x10\x10\x10\x10\x10\xf0\xf0\x10\x18\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\xf8\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x100\xe0\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\xf8\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x90\xdfP00\x18\x1c\x17\x13\x11\x10\x10\x90\x90\x10\x18\x10\x00\x00\x00\x00\x00\x00\xe0\xfc\xef!   \xf0 \x80\x80\x80\x80\xff\xff\x80\x80\x80\x80\x80\xff\xff\x80\x80\xc0\x80\x00\x00\x00\x00\x02\x02\x02\x02\x02\xff\xff\x02\x02\x02\x02\x02\xff\x06\x00\x00\x00\xff\x01\x01\x01\x01\x01\x01\x01\xff\xff\x00\x00\x00\x00\x00\x04\x18p\xf0\x00\x00\x00\xe0\x1c\x03\x01\xfe\x02\x02\x02\x02\x02\xff\xff\x02\x02\x02\x02\x02\xff\xfe\x00\x00\x00\x00\x00\x00\x00  \x10\x10\x08\x0c\x04\x02\x03\x01!q?\'!!!!!!!\xf1a\x01\x01\x00\x00\x00\x00\x00\x08\x04\x03\x00\xff\xff\x80\x80\x80\x80\xff\x00\x00\x00\x00\xc0\xff\x1f\x00\x00\x00\x00\x00\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x7f\x07\x00\x00\x00\x00\xe0\xff\x00\x00\x00\x00\xff\x00\x00\x00\x00\x00\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x80\x80\xc0\xe0<\x07\x00\x00\x00\x00\xff\x04\x04\x04\x04\x04\xff\xff\x04\x04\x04\x04\x04\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x100p``0?\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07\x07\x00\x00\x00@#0\x18\x0c\x06\x03\x00\x00\x00\x00\x00\x00\x00?>\x00\x00\x00\x00\x00\x00\x00@ \x10\x0c\x07\x01\x04\x08\x08\x188\x1c\x0f\x03\x00\x00\x00\x00?\x04\x04\x04\x04\x04\x04\x04??\x00\x00\x00\x00\x00\x00\x000\x7f\x7f\x00\x00\x00\x00\x00\x00\x7f\x08\x08\x08\x08\x08\x0f\x0f\x08\x08\x08\x08\x08\x7f?\x00\x00\x00\x00")
kaoyan_fonts2 = bytearray(b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00    \xe0\xe0   00 \x10\x10\x10\xf0\xf0\x10\x10\x10\x10\x10\xf0\xf0\x10\x18\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10 \xe0\xc0\x80\x00\x00\x00\x00\xfc\xf8\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x80\x80\x80\x80\x80\x80\x80\x80\x84\xb8\xf0\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\xc0\x80\x00\x00\x00\x00\x00@@@@@@@@@@@@@@@@@@@@@@@@``@@\x00\x00\x00\x00\x00\x00\xe0\xfc\xef!   \xf0 \x80\x80\x80\x80\xff\xff\x80\x80\x80\x80\x80\xff\xff\x80\x80\xc0\x80\x00\x00\x00\x00\x00\x08\x08\x08\x08\x08\x08\t\t\x08\x08\x88\xf8\x7f\x0f\x08\x08\x08\x08\x08\x08\x08\x08\x08\x08\xf8\xfc\x08\x00\x00\x00\x00\x00\x04.\'         \xe0\xe0       0>#\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x04\x03\x00\xff\xff\x80\x80\x80\x80\xff\x00\x00\x00\x00\xc0\xff\x1f\x00\x00\x00\x00\x00\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\xc0p<\x0f\x03\x00\x00\x01\x02\x06\x0c\x1cx0\x00\x00\xe0\xff\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\xfe\xce\x00\x00\x00\x00\x00\xff\xff\x10\x10\x10\x10\x10\x10\x18\x18\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07\x07\x00\x00\x00@#0\x18\x0c\x06\x03\x00\x00\x00\x00\x00\x00\x00?>\x00\x00\x00\x00\x00\x00\x00\x00@ 0\x10\x08\x04\x07\x03\x01\x00\x00\x00\x00\x00\x00\x00\x08\x08\x10\x100pp8\x1f\x0f\x00\x00\x00\x00\x00\x00@ \x10\x0c\x07\x03\x00\x00\x01\x02\x04\x0c\x08\x1f\x1f\x100000000000\x10\x00\x00\x00")
big_kaoyan = bytearray(b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x80\x00\x00\x00\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\xe0\xf0\xe0\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00@\xc0\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\xfc\xf8\xf8\xf00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x18p\xe0\xe0\xc0\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x06\x0e\x0e\x06\x06\x06\x06\x06\xf6\xfe\xfe~\x06\x06\x06\x06\x06\x06\x07\x07\x07\x07\x06\x04\x00\x01\x03\x01\x01\x01\x01\xff\xff\xff\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xff\xff\xff\x01\x01\x01\x01\x01\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x03\x07\x1f~\xfc\xf8\xf8\xe0\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\xfc\xfc`````````````````ao\x7fog`````````````````\xe0\xf0\xf8\xf0\xe0\xc0\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xfe\xff\x1f\x03\x00\x00\x00\x00\x00\x00\x00\xc0\x80\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 `\xe0`````````acca```````\xfc\xff\xff\xffc`````````````````````\xf8\xfc\xf8\xf0`\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0008<??\x1f\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb0\xdc\x8f\x07\x03\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x100pp000000000000000000000000000000000000000000008<>?><80 \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xf8\x7f\xff\xff\xff\xff\x03\x03\x03\x03\x03\x03\x03\xff\xff\xff\xff\x03\x100p000000\xff\xff\xff0000000000\xff\xff\xff00008<<80 \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\xf0\xff\xff\x7f\x0f\x00\xc0\x80\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x06\x0e\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\xfe\xfe\xfe\xfe\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x07\x07\x07\x07\x07\x06\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00`0\x1c\x0f\x03\x01\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xff\xff\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\xf0\xfc\xff\x7f\x1f\x03\x00\x00\x00\x00\x01\x03\x07\x0f\x0e\x1e|\xf8\xf8\xf0\xf0\xe0\xc0\x00\x00\x00\x00\x00\x00\xe0\xff\xff\xff\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\xff\xfe\xfe<\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\xc0\xe0\xf0\xe0\xc0\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff```````\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x80\xe0\xfc\xff?\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\xc0\xe0\xf8\xfc?\x1f\x0f\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x03\x0f\x1f\x1f\x00\x00\x00\x00\x00\xc0\xff\xff\xff?\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\xfc\xff\x7f\x1f\x19p\xc0\x80\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00?\x1f\x1f\x0f\x00\x00\x00\x00\x00\x00\x00\x07\x07\x03\x03\x80\xc0\xe0p<\x1e\x0f\x07\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\xc0\xe0p8\x1c\x1f\x0f\x07\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00@@\xc0\xc0\xc0\xc0\x80\x80\x80\x80\x80\x80\x80\xc0\xe0\xf8\xff\xff\x7f\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\xc0\xf0|?\x1f\x07\x01\x00\x00\x00\x00\x00\x03\x07\x0e\x1c<8p\xf0\xe0\xff\xff\xff\xff\xc0\xc0\xc0\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x08\x0c\x06\x03\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x0f\x07\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x18\x08\x0c\x06\x07\x03\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x03\x03\x0f\x1f\x1f\x0f\x0f\x07\x07\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x08\x0c\x06\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x01\x03\x03\x03\x03\x03\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\x0f\x03\x01\x00\x00\x00\x00\x00\x00\x00')
weath = bytearray(b'\x00\x01\xe0\x00\x03\x00\x01\xe0\x00\x03\x00\x01\xe0\x00\x03\x00\x01\xe0\x00\x03\x07\x01\xe08\x03\x0f\x81\xe0|\x03\x0f\xc0\x00\xfc\x03\x0f\xc3\xf0\xfc\x03\x07\xcf\xfc\xf8\x03\x03\xbf\xfep\x03\x00\x7f\xff\x00\x03\x00\x7f\xff\x80\x03\x00\xfc\x08\x00\x03\x00\xf8\x03\xfe\x03\x01\xf0\x1f\xff\x83\xfd\xf0?\xff\xc3\xfd\xf0\x7f\xff\xe3\xfd\xf0\xff\x8f\xf3\xfd\xf1\xfc\x01\xfb\x00\x01\xf8\x00\xfb\x00s\xf0\x00{\x03\xff\xe0\x00\x7f\x07\xff\xe0\x00\x7f\x0f\xff\xc0\x00?\x0f\xff\xc0\x00\x7f\x0f\x07\xc0\x00\x7f\x1f\x03\x80\x00\x7f\x1f\x00\x00\x00\xff\x1f\xff\xff\xff\xfb\x0f\xff\xff\xff\xfb\x0f\xff\xff\xff\xf3\x07\xff\xff\xff\xe3')
# 不适合高频使用
def IMG_SHOW(path):
    with open(path, 'r') as f:
        f.readline()
        width, height = [int(v) for v in f.readline().split()]
#         print(width,height)
        data = bytearray(f.read())
#         print(data)
        f.close()
    fbuf = framebuf.FrameBuffer(data, width, height, framebuf.MONO_HLSB)
    return fbuf

def OLED_init():
    # 初始化SPI对象，sck,mosi，miso 三个参数是必须的
    spi = SPI(sck=SCK, mosi=MOSI, miso=MISO)
    # 初始化OLED对象，128*64 是屏幕的分辨率，所谓的大小
    oled = SSD1306_SPI(128, 64, spi, dc=DC, res=RES, cs=CS)
    # 打开SPI通道
    oled.poweron()
    # 初始化OLED显示
    oled.init_display()

    bili_path = './img/bili/'
    bili_list = os.listdir(bili_path)

    # 初始化让小电视跳动5次
    snt = 5
    while snt!=0:
        for i in bili_list:
            fbuf = IMG_SHOW('./img/bili/'+i)
            oled.fill(0)
            oled.blit(fbuf, 34, 0,0)
            oled.show()
            utime.sleep_ms(60)
        snt -= 1
    oled.fill(0)
    oled.show()
    return oled
def OLED_fonts(font_size,font_data,position,oled,buf_list):
    width,height = font_size
    x,y = position
    length = len(font_data)
    num = length//(height//8)//(width)
    fbuf = framebuf.FrameBuffer(font_data,width*num,height,framebuf.MONO_VLSB)
    buf_list.append([fbuf,x,y])
#     oled.blit(fbuf, x+bias, y)
#     oled.show()
def screen1(oled,location,bias,buf_list):
    x,y = location
    OLED_fonts((32,32),kaoyan_fonts1,(x+bias,y),oled,buf_list)
    OLED_fonts((32,32),kaoyan_fonts2,(x+bias,y+32),oled,buf_list)
def screen2(oled,location,bias,buf_list):
    x,y = location
    OLED_fonts((16,16),weather_fonts,(x+bias+4,y),oled,buf_list)
#     fbuf = IMG_SHOW('./img/weather/cloudy.pbm')
    fbuf = framebuf.FrameBuffer(weath, 38, 32, framebuf.MONO_HLSB)
    buf_list.append([fbuf,20+bias+x,30+y])
def old_screen(oled,location,bias,buf_list):
    x,y = location
    pi2 = math.pi/2
    list2 = [0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9,2.0]
    for i in list2:
        pianyi = int(-128*math.sin(pi2*i))
        OLED_fonts((64,64),big_kaoyan,(pianyi+x+bias,y),oled,buf_list)
#         utime.sleep_ms(150)
if __name__ == "__main__":
    oled = OLED_init()
#     for i in range(10):
#         y = int(40*math.sin(i))
#         print(y)
#     OLED_fonts((32,32),kaoyan_fonts1,(0,0),0,oled)
#     OLED_fonts((32,32),kaoyan_fonts2,(0,32),0,oled)
    buf_list = []
    screen2(oled,(0,0),0,buf_list)
    for i in buf_list:
        oled.blit(i[0], i[1], i[2])
        oled.show()
        